home *** CD-ROM | disk | FTP | other *** search
/ Over 1,000 Windows 95 Programs / Over 1000 Windows 95 Programs (Microforum) (Disc 1).iso / 1271 / term.frm < prev    next >
Text File  |  1997-03-21  |  12KB  |  529 lines

  1. VERSION 2.00
  2. Begin Form Term 
  3.    AutoRedraw      =   -1  'True
  4.    BorderStyle     =   3  'Fixed Double
  5.    Caption         =   "TERM"
  6.    ClientHeight    =   5160
  7.    ClientLeft      =   2760
  8.    ClientTop       =   945
  9.    ClientWidth     =   8595
  10.    FontBold        =   0   'False
  11.    FontItalic      =   0   'False
  12.    FontName        =   "Courier New"
  13.    FontSize        =   8.25
  14.    FontStrikethru  =   0   'False
  15.    FontUnderline   =   0   'False
  16.    Height          =   5850
  17.    Left            =   2700
  18.    LinkTopic       =   "Form1"
  19.    ScaleHeight     =   5160
  20.    ScaleWidth      =   8595
  21.    Top             =   315
  22.    Width           =   8715
  23.    Begin Frame AcceptPane 
  24.       BackColor       =   &H00C0C0C0&
  25.       FontBold        =   -1  'True
  26.       FontItalic      =   0   'False
  27.       FontName        =   "MS Sans Serif"
  28.       FontSize        =   12
  29.       FontStrikethru  =   0   'False
  30.       FontUnderline   =   0   'False
  31.       Height          =   1335
  32.       Left            =   2760
  33.       TabIndex        =   1
  34.       Top             =   2160
  35.       Visible         =   0   'False
  36.       Width           =   2295
  37.       Begin CommandButton AcceptOK 
  38.          Caption         =   "OK"
  39.          Height          =   375
  40.          Left            =   720
  41.          TabIndex        =   2
  42.          Top             =   840
  43.          Width           =   855
  44.       End
  45.       Begin TextBox AcceptText 
  46.          Height          =   375
  47.          Left            =   120
  48.          TabIndex        =   0
  49.          Top             =   360
  50.          Width           =   2055
  51.       End
  52.    End
  53.    Begin Timer Timer 
  54.       Interval        =   125
  55.       Left            =   360
  56.       Top             =   240
  57.    End
  58.    Begin Menu menuLine 
  59.       Caption         =   "Line"
  60.       Begin Menu menuExit 
  61.          Caption         =   "E&xit"
  62.       End
  63.       Begin Menu menuOnLine 
  64.          Caption         =   "OnLine"
  65.       End
  66.       Begin Menu menuOffLine 
  67.          Caption         =   "OffLine"
  68.          Enabled         =   0   'False
  69.       End
  70.    End
  71.    Begin Menu menuChange 
  72.       Caption         =   "Change"
  73.       Begin Menu menuPort 
  74.          Caption         =   "Port"
  75.          Begin Menu menuCOM1 
  76.             Caption         =   "COM1"
  77.             Checked         =   -1  'True
  78.          End
  79.          Begin Menu menuCOM2 
  80.             Caption         =   "COM2"
  81.          End
  82.          Begin Menu menuCOM3 
  83.             Caption         =   "COM3"
  84.          End
  85.          Begin Menu menuCOM4 
  86.             Caption         =   "COM4"
  87.          End
  88.       End
  89.       Begin Menu menuBaud 
  90.          Caption         =   "Baud"
  91.          Begin Menu menu1200 
  92.             Caption         =   "1200"
  93.          End
  94.          Begin Menu menu2400 
  95.             Caption         =   "2400"
  96.          End
  97.          Begin Menu menu4800 
  98.             Caption         =   "4800"
  99.          End
  100.          Begin Menu menu9600 
  101.             Caption         =   "9600"
  102.          End
  103.          Begin Menu menu19200 
  104.             Caption         =   "19200"
  105.          End
  106.          Begin Menu menu38400 
  107.             Caption         =   "38400"
  108.             Checked         =   -1  'True
  109.          End
  110.          Begin Menu menu57600 
  111.             Caption         =   "57600"
  112.          End
  113.       End
  114.       Begin Menu menuParity 
  115.          Caption         =   "Parity"
  116.          Begin Menu menuNone 
  117.             Caption         =   "None"
  118.             Checked         =   -1  'True
  119.          End
  120.          Begin Menu menuEven 
  121.             Caption         =   "Even"
  122.          End
  123.          Begin Menu menuOdd 
  124.             Caption         =   "Odd"
  125.          End
  126.       End
  127.       Begin Menu menuDataBits 
  128.          Caption         =   "DataBits"
  129.          Begin Menu menuSeven 
  130.             Caption         =   "Seven"
  131.          End
  132.          Begin Menu menuEight 
  133.             Caption         =   "Eight"
  134.             Checked         =   -1  'True
  135.          End
  136.       End
  137.       Begin Menu menuStopBits 
  138.          Caption         =   "StopBits"
  139.          Begin Menu menuOne 
  140.             Caption         =   "One"
  141.             Checked         =   -1  'True
  142.          End
  143.          Begin Menu menuTwo 
  144.             Caption         =   "Two"
  145.          End
  146.       End
  147.    End
  148.    Begin Menu menuDial 
  149.       Caption         =   "Dial"
  150.       Enabled         =   0   'False
  151.    End
  152.    Begin Menu menuSend 
  153.       Caption         =   "Send"
  154.       Enabled         =   0   'False
  155.       Begin Menu menuTXxmodem 
  156.          Caption         =   "XMODEM"
  157.       End
  158.       Begin Menu menuTXymodem 
  159.          Caption         =   "YMODEM"
  160.       End
  161.    End
  162.    Begin Menu menuReceive 
  163.       Caption         =   "Receive"
  164.       Enabled         =   0   'False
  165.       Begin Menu menuRXxmodem 
  166.          Caption         =   "XMODEM"
  167.       End
  168.       Begin Menu menuRXymodem 
  169.          Caption         =   "YMODEM"
  170.       End
  171.    End
  172.    Begin Menu menuBreak 
  173.       Caption         =   "BREAK"
  174.    End
  175.    Begin Menu menuDebug 
  176.       Caption         =   "Debug"
  177.    End
  178. End
  179. ' TERM.BAS
  180. Option Explicit
  181.  
  182. Sub AcceptOK_Click ()
  183. Dim S As String
  184. AcceptPane.Visible = False
  185. menuDial.Enabled = False
  186. S = AcceptText.Text
  187. Call DisplayLine(TERM, S)
  188. If AcceptText.Text = "" Then
  189.   Call DisplayLine(TERM, "Missing Text")
  190.   Exit Sub
  191. End If
  192. ' set 1st state
  193. If WaitingFor = PHONE_NUMBER Then
  194.   mioState = Dial_1
  195. Else
  196.   'Waiting for FILE_NAME
  197.   xyState = FirstXYstate
  198.   FirstXYstate = 0
  199. End If
  200. End Sub
  201.  
  202. Sub Form_KeyPress (KeyAscii As Integer)
  203.     Dim Code As Integer
  204.     '''TERM.Print ">>>"; Hex$(KeyAscii); "";
  205.     If KeyAscii <> 10 Then
  206.       Code = SioPutc(ThePort, KeyAscii)
  207.     End If
  208. End Sub
  209.  
  210. Sub Form_Load ()
  211.     Dim Row As Integer
  212.     BaudText(1) = "600"
  213.     BaudText(2) = "1200"
  214.     BaudText(3) = "2400"
  215.     BaudText(4) = "4800"
  216.     BaudText(5) = "9600"
  217.     BaudText(6) = "19200"
  218.     BaudText(7) = "38400"
  219.     BaudText(8) = "57600"
  220.     ParityText(0) = "N"
  221.     ParityText(1) = "O"
  222.     ParityText(2) = "?"
  223.     ParityText(3) = "E"
  224.     ParityText(4) = "?"
  225.     ParityText(5) = "M"
  226.     ParityText(6) = "?"
  227.     ParityText(7) = "S"
  228.     FatalFlag = 0
  229.     ThePort = COM1
  230.     TheBaudCode = Baud38400
  231.     TheDataBits = WordLength8
  232.     TheStopBits = OneStopBit
  233.     TheParity = NoParity
  234.     OnLineFlag = 0
  235.     mioState = 0
  236.     xyState = 0
  237.     DebugLevel = 0
  238.     Call ShowConfig
  239.     Call DisplayInit(TERM)
  240. End Sub
  241.  
  242. Sub menu1200_Click ()
  243.   Call UncheckBaudRate
  244.   menu1200.Checked = True
  245.   TheBaudCode = Baud1200
  246.   Call ShowConfig
  247. End Sub
  248.  
  249. Sub menu19200_Click ()
  250.   Call UncheckBaudRate
  251.   menu19200.Checked = True
  252.   TheBaudCode = Baud19200
  253.   Call ShowConfig
  254. End Sub
  255.  
  256. Sub menu2400_Click ()
  257.   Call UncheckBaudRate
  258.   menu2400.Checked = True
  259.   TheBaudCode = Baud2400
  260.   Call ShowConfig
  261. End Sub
  262.  
  263. Sub menu38400_Click ()
  264.   Call UncheckBaudRate
  265.   menu38400.Checked = True
  266.   TheBaudCode = Baud38400
  267.   Call ShowConfig
  268. End Sub
  269.  
  270. Sub menu4800_Click ()
  271.   Call UncheckBaudRate
  272.   menu4800.Checked = True
  273.   TheBaudCode = Baud4800
  274.   Call ShowConfig
  275. End Sub
  276.  
  277. Sub menu57600_Click ()
  278.   Call UncheckBaudRate
  279.   menu57600.Checked = True
  280.   TheBaudCode = Baud57600
  281.   Call ShowConfig
  282. End Sub
  283.  
  284. Sub menu9600_Click ()
  285.   Call UncheckBaudRate
  286.   menu9600.Checked = True
  287.   TheBaudCode = Baud9600
  288.   Call ShowConfig
  289. End Sub
  290.  
  291. Sub menuBREAK_Click ()
  292. Dim Code As Integer
  293. mioState = 0
  294. Code = mioBreak(ThePort)
  295. Code = xyAbort(ThePort)
  296. menuDial.Enabled = True
  297. menuBREAK.Enabled = False
  298. End Sub
  299.  
  300. Sub menuCOM1_Click ()
  301.   Call UncheckComPorts
  302.   menuCOM1.Checked = True
  303.   ThePort = COM1
  304.   Call ShowConfig
  305. End Sub
  306.  
  307. Sub menuCOM2_Click ()
  308.   Call UncheckComPorts
  309.   menuCOM2.Checked = True
  310.   ThePort = COM2
  311.   Call ShowConfig
  312. End Sub
  313.  
  314. Sub menuCOM3_Click ()
  315.   Call UncheckComPorts
  316.   menuCOM3.Checked = True
  317.   ThePort = COM3
  318.   Call ShowConfig
  319. End Sub
  320.  
  321. Sub menuCOM4_Click ()
  322.   Call UncheckComPorts
  323.   menuCOM4.Checked = True
  324.   ThePort = COM4
  325.   Call ShowConfig
  326. End Sub
  327.  
  328. Sub menuDebug_Click ()
  329. Dim N As Integer
  330. Dim Parm As Integer
  331. Dim Text As String * 81
  332. 'display state variables
  333. Call DisplayLine(TERM, "mioState = " + Str$(mioState))
  334. Call DisplayLine(TERM, "xyState = " + Str$(xyState))
  335. ' any messages from xyDriver ?
  336. While xyGetMessage(Text, 80) > 0
  337.   Call DisplayLine(TERM, Text)
  338. Wend
  339. 'get current driver state
  340. Parm = xyGetParameter(ThePort, XY_GET_STATE)
  341. Call DisplayLine(TERM, "STATE = " + Str$(Parm))
  342. Parm = xyGetParameter(ThePort, XY_GET_ERROR_CODE)
  343. If Parm <> 0 Then
  344.   Call DisplayLine(TERM, "Error code =" + Str$(Parm))
  345.   Parm = xyGetParameter(ThePort, XY_GET_ERROR_STATE)
  346.   Call DisplayLine(TERM, "Error state =" + Str$(Parm))
  347. End If
  348. 'increment xyDriver Debug level
  349. DebugLevel = (DebugLevel + 1) Mod 3
  350. Call DisplayLine(TERM, "xyDriver DebugLevel = " + Str$(DebugLevel))
  351. End Sub
  352.  
  353. Sub menuDial_Click ()
  354. AcceptPane.Caption = "Phone Number?"
  355. menuDial.Enabled = False
  356. menuBREAK.Enabled = True
  357. AcceptText.Text = ""
  358. AcceptPane.Visible = True
  359. WaitingFor = PHONE_NUMBER
  360. End Sub
  361.  
  362. Sub menuEight_Click ()
  363.   Call UncheckDataBits
  364.   menuEight.Checked = True
  365.   TheDataBits = WordLength8
  366.   Call ShowConfig
  367. End Sub
  368.  
  369. Sub menuEven_Click ()
  370.   Call UncheckParity
  371.   menuEven.Checked = True
  372.   TheParity = EvenParity
  373.   Call ShowConfig
  374. End Sub
  375.  
  376. Sub menuExit_Click ()
  377.   Call GoOffLine
  378.   End
  379. End Sub
  380.  
  381. Sub menuNone_Click ()
  382.   Call UncheckParity
  383.   menuNone.Checked = True
  384.   TheParity = NoParity
  385.   Call ShowConfig
  386. End Sub
  387.  
  388. Sub menuOdd_Click ()
  389.   Call UncheckDataBits
  390.   menuOdd.Checked = True
  391.   TheParity = OddParity
  392.   Call ShowConfig
  393. End Sub
  394.  
  395. Sub menuOffLine_Click ()
  396.   menuChange.Enabled = True
  397.   menuOffline.Enabled = False
  398.   menuOnline.Enabled = True
  399.   menuDial.Enabled = False
  400.   menuSend.Enabled = False
  401.   menuReceive.Enabled = False
  402.   Call GoOffLine
  403.   Call ShowConfig
  404. End Sub
  405.  
  406. Sub menuOne_Click ()
  407.   Call UncheckStopBits
  408.   menuOne.Checked = True
  409.   TheStopBits = OneStopBit
  410.   Call ShowConfig
  411. End Sub
  412.  
  413. Sub menuOnLine_Click ()
  414.   menuOffline.Enabled = True
  415.   menuOnline.Enabled = False
  416.   menuChange.Enabled = False
  417.   menuDial.Enabled = True
  418.   menuSend.Enabled = True
  419.   menuReceive.Enabled = True
  420.   Call DisplayInit(TERM)
  421.   Call GoOnLine
  422.   Call ShowConfig
  423. End Sub
  424.  
  425. Sub menuRXxmodem_Click ()
  426.   AcceptPane.Caption = "XM Filename?"
  427.   menuBREAK.Enabled = True
  428.   AcceptText.Text = ""
  429.   AcceptPane.Visible = True
  430.   LastPacket = -1
  431.   WaitingFor = FILE_NAME
  432.   FirstXYstate = RX_XM
  433. End Sub
  434.  
  435. Sub menuRXymodem_Click ()
  436.   menuBREAK.Enabled = True
  437.   LastPacket = -1
  438.   'filename supplied by sender
  439.   xyState = RX_YM
  440. End Sub
  441.  
  442. Sub menuSeven_Click ()
  443.   Call UncheckDataBits
  444.   menuSeven.Checked = True
  445.   TheDataBits = WordLength7
  446.   Call ShowConfig
  447. End Sub
  448.  
  449. Sub menuTwo_Click ()
  450.   Call UncheckStopBits
  451.   menuTwo.Checked = True
  452.   TheStopBits = TwoStopBits
  453.   Call ShowConfig
  454. End Sub
  455.  
  456. Sub menuTXxmodem_Click ()
  457.   AcceptPane.Caption = "XM Filename?"
  458.   menuBREAK.Enabled = True
  459.   AcceptText.Text = ""
  460.   AcceptPane.Visible = True
  461.   LastPacket = -1
  462.   WaitingFor = FILE_NAME
  463.   FirstXYstate = TX_XM
  464. End Sub
  465.  
  466. Sub menuTXymodem_Click ()
  467.   AcceptPane.Caption = "YM Filename?"
  468.   menuBREAK.Enabled = True
  469.   AcceptText.Text = ""
  470.   AcceptPane.Visible = True
  471.   LastPacket = -1
  472.   WaitingFor = FILE_NAME
  473.   FirstXYstate = TX_YM
  474. End Sub
  475.  
  476. Sub Timer_Timer ()
  477.   If OnLineFlag Then
  478.     'get incoming serial data
  479.     Call GetIncoming
  480.   End If
  481. End Sub
  482.  
  483. Sub Timer1_Timer ()
  484.   If OnLineFlag Then
  485.     'get incoming serial data
  486.     Call GetIncoming
  487.   End If
  488. End Sub
  489.  
  490. Sub UncheckBaudRate ()
  491. 'uncheck all baud rates
  492. menu1200.Checked = False
  493. menu2400.Checked = False
  494. menu4800.Checked = False
  495. menu9600.Checked = False
  496. menu19200.Checked = False
  497. menu38400.Checked = False
  498. menu57600.Checked = False
  499. End Sub
  500.  
  501. Sub UncheckComPorts ()
  502. 'uncheck all COM ports
  503. menuCOM1.Checked = False
  504. menuCOM2.Checked = False
  505. menuCOM3.Checked = False
  506. menuCOM4.Checked = False
  507. End Sub
  508.  
  509. Sub UncheckDataBits ()
  510. 'uncheck data bits
  511. menuSeven.Checked = False
  512. menuEight.Checked = False
  513. End Sub
  514.  
  515. Sub UncheckParity ()
  516. 'uncheck parity
  517. menuOdd.Checked = False
  518. menuEven.Checked = False
  519. menuTwo.Checked = False
  520.  
  521. End Sub
  522.  
  523. Sub UncheckStopBits ()
  524. 'uncheck stop bits
  525. menuOne.Checked = False
  526. menuNone.Checked = False
  527. End Sub
  528.  
  529.